package com.ruicar.afs.cloud.channel.cardealer.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruicar.afs.cloud.channel.cardealer.condition.CarDealerCondition;
import com.ruicar.afs.cloud.channel.cardealer.condition.DirectCarDealerCondition;
import com.ruicar.afs.cloud.channel.cardealer.entity.CommonCarDealer;
import com.ruicar.afs.cloud.channel.cardealer.vo.CarDealerVo;
import com.ruicar.afs.cloud.channel.cardealer.vo.ChannelInfoVo;
import com.ruicar.afs.cloud.channel.cardealer.vo.CommonCarDealerVo;
import com.ruicar.afs.cloud.channel.cardealer.vo.DirectCarDealerVo;
import com.ruicar.afs.cloud.common.core.util.IResponse;

import java.util.List;

/**
 * @author: sang jian
 * @date: 2020/5/14 10:55
 * @description:
 */
public interface CarDealerService extends IService<CommonCarDealer> {

    IPage<CommonCarDealerVo> getCommonCarDealerList(Page page, CarDealerCondition carDealerCondition);

    List<ChannelInfoVo> getChannelsByCardealerId(String id);

    //停用普通车商
    IResponse diableCarDealer(String[] channelIds, String[] ids);

    /**
     * 根据合作商账户返回此账户下的车商列表信息
     */
    IResponse<CarDealerVo> getCarDealersByUserId(String userId, String cardealerType);

    /**
     * 多条件分页获取直营车商
     */
    IPage<DirectCarDealerVo> getDirectCarDealerList(Page page, CarDealerCondition carDealerCondition);



    IPage<DirectCarDealerVo> getAreaListCondition(Page page, DirectCarDealerCondition condition);
}
